Machine learning device, machine learning method, and storage medium

ABSTRACT

A machine learning method executed by a computer, the method includes distributing a first learning model learned on the basis of a plurality of logs collected from a plurality of electronic devices to each of the plurality of electronic devices, the first learning model outputting operation content for operating an electronic device; when an operation different from an output result of the first learning model is performed by a user relative to a first electronic device among the plurality of electronic devices, estimating a similar log corresponding to a state of the learning model in which the different operation is performed from the plurality of logs; generating a second learning model on the basis of a log obtained by excluding a log of a second electronic device associated with the similar log from among the plurality of logs; and distributing the second learning model to the first electronic device.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority of theprior Japanese Patent Application No. 2019-77839, filed on Apr. 16,2019, the entire contents of which are incorporated herein by reference.

FIELD

The embodiments discussed herein are related to a learning device, alearning method, and a storage medium.

BACKGROUND

A cooperation system is used in which a cloud that performs airconditioning for controlling an air conditioner and the like and an edgecooperate with each other so as to make a room temperature comfortablefor a user. For example, a cloud server acquires a sensor value such asa room temperature and an outside temperature and an operation log of anair conditioner from each edge that is an air conditioner in each roomor the like. Then, the cloud server learns a machine learning model byusing the sensor value and the operation log and distributes the machinelearning model to each edge. Each edge estimates a user's operation byusing the learned machine learning model and changes temperature settingof the air conditioner before the user's operation is performed so as toperform air conditioning control comfortable for the user.

In recent years, a technology has been known in which a cloud serverextracts similar edges and generates a group by using the informationcollected from each edge and generates a machine learning model for eachgroup by using the data collected by the edge belonging to each group.Furthermore, a technology has been known that performs relearning sothat data that has not adapted is adapted when the distributed machinelearning model does not adapt to the edge. For example, InternationalPublication Pamphlet No. WO 2018/16248, Japanese Laid-open PatentPublication No. 2018-26129, Japanese Laid-open Patent Publication No.2018-27776, and the like are disclosed as related art.

SUMMARY

According to an aspect of the embodiments, a machine learning methodexecuted by a computer, the machine learning method includesdistributing a first machine learning model learned on the basis of aplurality of logs collected from a plurality of electronic devices toeach of the plurality of electronic devices, the first machine learningmodel outputting operation content for operating an electronic device;when an operation different from an output result of the first machinelearning model is performed by a user relative to a first electronicdevice among the plurality of electronic devices, estimating a similarlog corresponding to a state of the machine learning model in which thedifferent operation is performed from the plurality of logs; generatinga second machine learning model on the basis of a log obtained byexcluding a log of a second electronic device associated with thesimilar log from among the plurality of logs; and distributing thesecond machine learning model to the first electronic device.

The object and advantages of the invention will be realized and attainedby means of the elements and combinations particularly pointed out inthe claims.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and arenot restrictive of the invention.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram illustrating an example of an overall configurationof a system according to a first embodiment;

FIG. 2 is a functional block diagram illustrating a functionalconfiguration of a cloud server according to the first embodiment;

FIG. 3 is a diagram illustrating an example of information stored in asensor value DB;

FIG. 4 is a diagram illustrating an example of information stored in anoperation log DB;

FIG. 5 is a diagram for explaining an image of a machine learning model;

FIG. 6 is a diagram for explaining specification of a cancel operation;

FIG. 7 is a diagram for explaining a method for specifying an operationlog associated with the cancel operation;

FIG. 8 is a diagram for explaining specification of data to be excludedfrom a learning target;

FIG. 9 is a diagram for explaining relearning;

FIG. 10 is a sequence diagram illustrating a flow of processing;

FIGS. 11A and 11B are diagrams for explaining a difference from generalrelearning;

FIG. 12 is a diagram for explaining a first specific example to whichthe first embodiment is applied;

FIG. 13 is a diagram for explaining a second specific example to whichthe first embodiment is applied;

FIG. 14 is a diagram for explaining a third specific example to whichthe first embodiment is applied;

FIG. 15 is a diagram for explaining exclusion determination; and

FIG. 16 is a diagram illustrating an example of a hardwareconfiguration.

DESCRIPTION OF EMBODIMENTS

However, an efficiency of relearning is low, it takes time to generate amachine learning model having accuracy suitable for each edge, and timewhen the user feels uncomfortable increases.

Typically, it is difficult to acquire all feature amounts that expressan edge, and a machine learning model is learned by using a part of thefeature amounts. Therefore, there is a case where a model that is notsuitable for an edge is generated although models are similar to eachother by definition. For example, even if 10 air conditioners havesimilar setting temperatures, outside temperatures, and humidity, heatinsulating properties of built houses are different from each otherdepending on a material such as wood, light-gauge steel, reinforcedconcrete, or the like. However, since the above information is notacquired as the feature amount, even if a machine learning model isgenerated according to data collected from the ten air conditionersdescribed above, an adaptive edge and unadaptive edge are generated.

Furthermore, when a deduction result with respect to certain data is notappropriate regarding the distributed machine learning model, even ifrelearning is performed by using the data, when different data isgenerated, a situation occurs in which a deduction result is notappropriate. Therefore, relearning is frequently repeated. In this case,it takes time to improve accuracy of the machine learning model, and thetime when the user feels uncomfortable increases. In consideration ofthe above, it is desirable to efficiently learn a machine learning modeladapted to each edge.

Hereinafter, embodiments of a learning method, a learning program, and alearning device disclosed in the present application will be describedin detail with reference to the drawings. Note that the presentembodiment is not limited by these embodiment. Furthermore, theembodiments can be appropriately combined within a range withoutcontradiction.

First Embodiment Example of Overall Configuration

FIG. 1 is a diagram illustrating an example of an overall configurationof a system according to a first embodiment. As illustrated in FIG. 1,the system is an air conditioning control system in which a cloud servercooperates with an edge. In this system, a cloud server 10 iscommunicably connected to a communication device in each roomcorresponding to an edge via a network N. Note that, as the network N,various communication networks such as the Internet or the like can beadopted regardless of wired or wireless communication.

Each room is an example of the edge which is a control target by thecloud server 10. For example, a room 1 includes an air conditioner 1 athat is provided in the room and controls air conditioning in the room.A room 2 includes an air conditioner 2 a that is provided in the roomand controls air conditioning in the room and an information terminal 2b that transmits an air conditioning control instruction to the airconditioner 2 a by using a wireless network, a Universal Plug and Play(UPnP), or the like. Furthermore, a room 3 includes an air conditioner 3a that is provided in the room and controls air conditioning in the roomand a remote controller 3 b that transmits an air conditioning controlinstruction to the air conditioner 3 a.

Note that, here, the description will be made as assuming, in each room,a device that receives a machine learning model distributed from thecloud server 10, predicts a user's operation by using the machinelearning model, and controls air conditioning depending on theprediction result as an edge terminal. For example, in a case of theroom 1, the air conditioner 1 a corresponds to the edge terminal, in acase of the room 2, the information terminal 2 b corresponds to the edgeterminal, and in a case of the room 3, the remote controller 3 bcorresponds to the edge terminal.

Furthermore, although not illustrated, in each room, a sensor thatmeasures an outside temperature, a sensor that measures a temperatureand humidity in the room, or the like are provided. Furthermore, sensorvalues sensed by various sensors (may be described as observed value orlog) are transmitted to the cloud server 10 by the respective sensors orthe like. Furthermore, each air conditioner and each edge terminalcollect an operation log or the like in which on/off of the airconditioning control is associated with a time and transmits thecollected operation log or the like to the cloud server 10. Note that,here, a case where there are three room is illustrated. However, this ismerely an example and does not limit the number of rooms or the like.

The cloud server 10 is a server device that provides a cloud service toa user in each room corresponding to the edge and receives the sensorvalue, the operation log, or the like from each room and learns amachine learning model by using the sensor value and the operation logas training data. For example, the cloud server 10 learns a machinelearning model (classification model) used for class classification asusing temperature information such as a room temperature, an outsidetemperature, or the like as an explanatory variable and using a user'soperation indicating to increase the temperature (Up), to lower thetemperature (Down), to maintain the temperature (Keep), or the like asan objective variable. Then, the cloud server 10 distributes the learnedmachine learning model to each edge terminal.

Then, each edge terminal in each room predicts a user's operation fromcurrent temperature information of each room by using the machinelearning model distributed from the cloud server 10 and controls the airconditioning depending on the prediction result. In this way, the airconditioning control on the edge side is realized.

By the way, in such a cloud-edge cooperation system, it is preferable togenerate a machine learning model for each edge by using a log such asthe sensor value of each edge. However, only the data collected from theedge alone is often not enough for the training data. Therefore, themachine learning model is learned by using data acquired from aplurality of, for example, 100 edges as the training data.

Since such a machine learning model is learned by using the data of theplurality of edges, the machine learning model is learned in a statewhere air conditioning control environments of the edges are mixed.Therefore, training data that is suitable for each edge and trainingdata that is not suitable for each edge are included. For example, it isnot preferable to use data of an edge B having low heat insulatingproperties for an edge A having high heat insulating properties astraining data. However, it is different for the cloud service that hasmany restrictions on collecting personal information to group edgeshaving similar air conditioning control environments and extractingedges having different air conditioning control.

Therefore, for example, the cloud server 10 according to the firstembodiment uses data collected from the plurality of edges A to Z as thetraining data and distributes a machine learning model generated byusing the training data to each edge. Then, for example, when adeduction result (prediction result) deducted (predicted) by the edge Ais not appropriate for the edge A, the cloud server 10 specifies dataassociated with the deduction result and excludes data of the edge Bthat is a source of the data from the training data. Then, the cloudserver 10 relearns the machine learning model for the edge A by usingthe training data from which the data of the edge B is deleted anddistributes the relearned machine learning model to the edge A. In thisway, the cloud server 10 can efficiently learn the machine learningmodel adapted to each edge.

[Functional Configuration]

Next, a functional configuration of the cloud server 10 illustrated inFIG. 1 will be described. FIG. 2 is a functional block diagramillustrating the functional configuration of the cloud server 10according to the first embodiment. As illustrated in FIG. 2, the cloudserver 10 includes a communication unit 11, a storage unit 12, and acontrol unit 20.

The communication unit 11 is a processing unit that controlscommunication with other device and is, for example, a communicationinterface or the like. For example, the communication unit 11 receivesvarious data such as operation results, air conditioning controlinformation, operation logs, or the like from a device such as an airconditioner, an edge terminal, a sensor, or the like provided in eachroom and transmits a machine learning model to the edge terminal.

The storage unit 12 is an example of a storage device that stores dataand a program executed by the control unit 20 and is, for example, amemory, a hard disk, or the like. The storage unit 12 stores a sensorvalue DB 13, an operation log DB 14, and a learning result DB 15.

The sensor value DB 13 is a database that stores sensor values regardingan outside temperature, a room temperature, a humidity in the room, andthe like acquired by the sensor in each room. For example, the sensorvalue stored here is an observed value that is acquired by the cloudserver 10 from each sensor and may include another observed value thatcan be measured by the sensor, such as a temporal change in thetemperature. Furthermore, the sensor value DB 13 stores a sensor valuefor each user, for example, for each sensor in each room (space).

FIG. 3 is a diagram illustrating an example of information stored in thesensor value DB 13. As illustrated in FIG. 3, the sensor value DB 13stores “an air conditioner, a date and time, a room temperature, and anoutside temperature” or the like in association with each other. The“air conditioner” stored here is an identifier used to identify the airconditioner, and the “date and time” is a date and time when the data ismeasured. The “room temperature” is a temperature in a room measured byeach sensor in each room, and the “outside temperature” is an outsidetemperature measured by each sensor in each room. In the example in FIG.3, the sensor values for one hour are illustrated. Regarding an airconditioner (a001), it is indicated that “the room temperature is 20degrees and the outside temperature is 10 degrees at 0:00 on Nov. 1,2019”.

The operation log DB 14 is a database that stores log informationregarding an operation of the air conditioner in each room. The loginformation stored here is information acquired by the cloud server 10from each air conditioner, a remote controller of each air conditioner,or the like and may include other information that can be measured bythe air conditioner or the like, such as a setting temperature or thelike. Furthermore, the operation log DB 14 stores an operation log foreach user, for example, for each air conditioner in each space.

FIG. 4 is a diagram illustrating an example of information stored in theoperation log DB14. As illustrated in FIG. 4, the operation log DB 14stores “an air conditioner, a date and time, an operation, and anAI-Flag” in association with each other. The “air conditioner” storedhere is an identifier used to identify the air conditioner, and the“date and time” is a date and time of the measurement. The “operation”is an operation log of each air conditioner. The “AI-Flag” isinformation indicating whether or not the prediction is made by usingthe machine learning model and information generated by the edgeterminal. When an operation is performed according to the prediction ofthe machine learning model, “1” is set, and when a change is made by auser's operation, “0” is set.

In the example in FIG. 4, it is indicated that the setting temperatureof the air conditioner (a001) does not change (Keep) at 0:00 on Nov. 1,2019. Furthermore, it is indicated that the setting temperature of theair conditioner (a001) is lowered (Down) according to the prediction ofthe machine learning model at 1:00 on Nov. 1, 2019. Furthermore, it isindicated that a setting temperature of an air conditioner (a002) islowered (Down) by a user's operation at 0:00 on Nov. 1, 2019.

The learning result DB 15 is a database that stores a learning result.For example, the learning result DB 15 stores a determination result(classification result) of the training data by the control unit 20 andvarious parameters and the like used to construct a machine learningmodel using a neural network, a logistic regression, or the like.

Note that, in addition to these DBs, various information can be stored.For example, a weather information DB can be stored that stores weatherinformation acquired from an external weather server, which is notillustrated, or the like. For example, the weather information DB storesobserved values of an outside temperature and humidity, forecast valuesof the outside temperature and the humidity, the weather, or the likeacquired by the cloud server 100 from the weather server at an arbitrarytiming.

The control unit 20 is a processing unit that controls the entire cloudserver 10 and is, for example, a processor or the like. The control unit20 includes an acquisition unit 30, a learning processing unit 40, and arelearning processing unit 50. Note that the acquisition unit 30, thelearning processing unit 40, and the relearning processing unit 50 areexamples of an electronic circuit included in a processor and examplesof a process performed by the processor.

The acquisition unit 30 is a processing unit that collects variousobserved values from each sensor or the like in each room. For example,the acquisition unit 30 acquires the sensor value from each sensor andstores the sensor value in the sensor value DB13, acquires the operationlog from each air conditioner and stores the operation log in theoperation log DB14, and acquires the weather information or the likefrom the weather server or the like and stores the weather informationin the storage unit 12 or the like. For example, the acquisition unit 30collects various data to be the training data on the cloud. Note thatthe acquisition unit 30 periodically collects the sensor values or thelike from each edge after the distribution of the machine learningmodel.

The learning processing unit 40 includes a learning unit 41 and adistribution unit 42 is a processing unit that generates training databy using the information such as the sensor value, the operation log, orthe like collected by the acquisition unit 30, learns the machinelearning model by using the training data, and distributes the learnedmachine learning model to each edge.

The learning unit 41 is a processing unit that generates the trainingdata and generates the machine learning model. For example, the learningunit 41 generates the training data by using each piece of informationsuch as the sensor value, the operation log, or the like collected bythe acquisition unit 30 and stores the generated training data in thestorage unit 12 or the like. Then, the learning unit 41 learns themachine learning model using the neural network, the logisticregression, or the like by using the training data. Then, when learningis completed, the learning unit 41 stores various parameters used toconstruct the machine learning model in the learning result DB15 as thelearning result.

For example, the learning unit 41 generates training data in which auser's operation at a certain time is set as an “objective variable” anda sensor value acquired five minutes before a certain time is set as an“explanatory variable”. In more detail, the learning unit 41 generates“an air conditioner, time, a user's operation (label), and a featureamount” by using each piece of collected data. The “air conditioner”stored here is an identifier used to identify the air conditioner.The“time” is time when the user's operation is performed. The “user'soperation” is operation content of air conditioning control by the user,and for example, to increase the setting temperature “Up”, to lower thesetting temperature “Down”, to keep the setting temperature (do nothing)“Keep”, or the like are set. In the “user's operation”, a user'soperation that is actually performed within a predetermined period oftime (for example, 30 minutes) from the above “time” is set. The“feature amount” is a sensor value which is acquired five minutes beforethe time when the user's operation is performed or the like and is, forexample, a combination of the room temperature, the humidity, and theoutside temperature.

In this way, the learning unit 41 learns the machine learning model byusing the training data in which a sensor value acquired five minutesbefore time t is set as the “explanatory variable” and a user'soperation that is set as a user's operation at the time t and isperformed within 30 minutes from the time t is set as the “objectivevariable”. For example, the learning unit 41 generates the machinelearning model that predicts the user's operation occurring at the timet which is five minutes later from the sensor value at five minutesbefore the time t.

As another example, the learning unit 41 can use not only the featureamount five minutes before but also a combination of “a feature amountfive minutes before, a feature amount ten minutes before, and a featureamount 15 minutes before” as an explanatory variable. For example, thesensor value (feature amount) used as the explanatory variable can bearbitrarily selected. Furthermore, an example has been described inwhich the user's operation that is actually occurred within 30 minutesfrom the time t is set as the “user's operation at the time t” set asthe objective variable. However, the setting can be arbitrarily changedto a user's operation at the time t, a user's operation within 10minutes from the time t, or the like.

The distribution unit 42 is a processing unit that distributes thelearned machine learning model to each edge terminal. For example, thedistribution unit 42 reads various parameters used to construct thelearned machine learning model from the learning result DB 15 andtransmits the read parameter to each edge terminal. Each edge terminalcan construct the learned machine learning model by using thedistributed various parameters.

FIG. 5 is a diagram for explaining an image of a machine learning model.Here, for easy description, an example will be described in which auser's operation is classified into two values, i.e. “Keep” and “Down”In a two-dimensional feature space of the room temperature and thehumidity. Note that a thick line in FIG. 5 indicates a predictionboundary on the basis of the learned machine learning model.

As illustrated in FIG. 5, the machine learning model learned by thelearning unit 41 predicts whether the user's operation that occurswithin 30 minutes from the time t is “Keep” or “Down” on the basis ofthe room temperature and the humidity at the time t. Here, when “Keep”is predicted, it is predicted that an operation to increase thetemperature or lower the temperature is not performed within 30 minutesfrom the time t, and the setting temperature is maintained. On the otherhand, when “Down” is predicted, it is predicted that the operation tolower the temperature is performed within 30 minutes from the time t,and the setting temperature is lowered by a predetermined temperature(for example, one degree).

The relearning processing unit 50 includes a specification unit 51 and arelearning unit 52 and is a processing unit that relearns the machinelearning model so that a machine learning model suitable for the edgeterminal is obtained for each edge terminal. For example, the relearningprocessing unit 50 performs relearning while excluding the training datathat is not suitable for the edge from the training data used by thelearning processing unit 40 for each edge.

The specification unit 51 is a processing unit that specifies trainingdata to be excluded from the learning target when the machine learningmodel is relearned on the basis of prediction accuracy according to thedistributed machine learning model for each edge terminal. For example,the specification unit 51 performs (1) specification of a canceloperation, (2) specification of an operation log associated with thecancel operation, and (3) specification of data to be excluded from thelearning target. Note that, here, an example will be described in whichthe edge A is relearned. However, similar processing is executed onother edges.

(1) Specification of Cancel Operation

The specification unit 51 acquires a prediction result by thedistributed machine learning model and an actual user's operation fromeach edge terminal. Subsequently, the specification unit 51 specifiesoccurrence of a user's operation different from the prediction result,for example, occurrence of a cancel operation.

FIG. 6 is a diagram for explaining the specification of the canceloperation. The specification unit 51 acquires the data illustrated inFIG. 6 collected by the edge terminal of the edge A after thedistribution of the machine learning model from the edge terminal of theedge A. Here, the data illustrated in FIG. 6 is information indicatingwhether or not the prediction result associated with “the time, thesetting temperature (room temperature), the humidity, and the AI-Flag”is correct. The “time” is time to be predicted, and the “settingtemperature” is a temperature set by an air conditioner. The humidity isa humidity in a room measured by a sensor. The “AI-Flag” is informationindicating whether or not the prediction is based on the machinelearning model.

In a case of FIG. 6, the specification unit 51 specifies that thesetting temperature is changed from “27 degrees” to “28 degrees” at atime t+1, and “1” is set to the “AI-Flag” at that time. Therefore, thespecification unit 51 specifies that the setting temperature is changedaccording to the prediction by the machine learning model (predictionoperation). Then, the specification unit 51 specifies that the settingtemperature is changed from “28 degrees” to “27 degrees” at a time t+30that is within 30 minutes from the time t+1. At this time, since “0” isset to the “AI-Flag”, the specification unit 51 specifies that thesetting temperature is changed by the user's operation instead of theprediction by the machine learning model. As a result, since thetemperature setting by the prediction operation by the machine learningmodel performed at the time t+1 is canceled by the prediction operationby the user's operation at the time t+30 opposite to the predictionoperation, the specification unit 51 specifies that the user's operationat the time t+30 as the “cancel operation”.

For example, the specification unit 51 specifies that the canceloperation is performed on the prediction result (operation) that inputsthe setting temperature “28 degrees” and the humidity “50%” after thedistribution of the machine learning model by the edge A. Note that thenumber of cancel operations is not limited to one and may be plural.

(2) Specification of Operation Log Associated with Cancel Operation

After specifying the cancel operation, the specification unit 51specifies an operation log (specification operation) associated with“the setting temperature (28 degrees) and the humidity (50%)” that is atarget of the cancel operation from training data used for the machinelearning model. For example, the specification unit 51 specifiestraining data in a state similar to the state of the edge A thatperforms the canceled operation. For example, the specification unit 51specifies training data that adversely affects on the sensor values “thesetting temperature (28 degrees) and the humidity (50%)” of the edge A.Note that, when the plurality of cancel operations is specified, theabove processing is executed on each cancel operation.

FIG. 7 is a diagram for explaining a method for specifying an operationlog associated with a cancel operation. In FIG. 7, an example will bedescribed in which data (training data) in which an operation log and asensor value are associated with a time and an air conditioner ID isplotted in a feature space that is a two-dimensional space of the roomtemperature and the humidity. Note that a thick line in FIG. 7 indicatesa prediction boundary on the basis of the learned machine learningmodel.

As Illustrated in FIG. 7, the specification unit 51 plots the state inwhich the cancel operation (room temperature and humidity) is performedin the feature space and specifies an operation log closest to thestate. For example, the canceled state is represented as a “vector t(corresponding to x in FIG. 7)”, a set of operation logs of the user'soperation “Down” to which the canceled state belongs is represented asX_(down), and it is assumed that X_(down) include an operation log“vector x_(i)” (i is natural number). In this case, the specificationunit 51 specifies an operation log of which an absolute value of adifference between the “vector t” and the “vector x_(i)” is thesmallest.

As another example, the specification unit 51 specifies an operation logof which a distance to the canceled operation in the feature space isless than a threshold. If the example above is explained, thespecification unit 51 specifies an operation log of which an absolutevalue of “(vector t)−(vector x_(i))” is less than a threshold c. Notethat the threshold can be arbitrarily set and changed.

(3) Specification of Data Excluded from Learning Target

After specifying the operation log associated with the cancel operation,the specification unit 51 determines data of the edge corresponding tothe operation log as data excluded from the learning target and notifiesthat of the relearning unit 52. FIG. 8 is a diagram for explainingspecification of data to be excluded from the learning target. Here, anexample will be described that includes the feature space illustrated inFIG. 7 and data (training data) obtained by integrating the informationstored in the sensor value DB 13 and the information stored in theoperation log DB 14.

As illustrated in FIG. 8, the specification unit 51 specifies a“specification operation” that is the operation associated with thecancel operation in the feature space. Subsequently, the specificationunit 51 specifies data corresponding to the specification operation fromamong the training data with reference to various DBs. Here, it isassumed that the specification unit 51 specify data of “an operation(Down), an air conditioner ID (a027), a room temperature (28), ahumidity (45), and an outside temperature (30) . . . ”.

In this case, the specification unit 51 specifies that an edgecorresponding to the air conditioner ID (a027) is not suitable as thetraining data of the edge A. As a result, the specification unit 51determines a data group corresponding to the air conditioner ID (a027)among the training data used by the machine learning model as dataexcluded from the learning target and notifies the determined data ofthe relearning unit 52.

Returning to FIG. 2, the relearning unit 52 is a processing unit thatrelearns the machine learning model by using the training data fromwhich the data notified by the specification unit 51 is excluded anddistributes the relearned machine learning model to the edge.

An example of relearning for the edge A will be described with referenceto FIG. 9. FIG. 9 is a diagram for explaining relearning. As illustratedin FIG. 9, the relearning unit 52 generates training data obtained byexcluding the data associated with the air conditioner ID (a027) fromthe training data (operation log and sensor value) used at previouslearning. For example, the data of the edge of the air conditioner ID(a027), which is estimated to have unfavorable effect on the machinelearning model that is previously learned because an environment or thelike is different from that of the edge A, is removed.

Then, the relearning unit 52 relearns the machine learning model byusing the training data obtained by excluding the data that is notsuitable as the training data for the edge A. Thereafter, the relearningunit 52 stores the relearning result in the learning result DB15 anddistributes the relearning result to the edge A. As a result, asillustrated in FIG. 9, relearning can be performed as excluding not onlythe data in which the cancel operation is performed but also relateddata related to the data. Therefore, it is possible to performrelearning on not only around the cancel operation in the feature spacebut also the entire feature space, and it is possible to totally updatea boundary by the machine learning model.

Note that the relearning unit 52 can generate a relearned learned modelby updating the learned machine learning model by performing therelearning by using the excluded training data on the learned machinelearning model. Furthermore, the relearning unit 52 can discard thelearned machine learning model and generate a learned machine learningmodel obtained by learning by using the excluded training data as therelearned learned model.

[Flow of Processing]

Next, a series of flows from the distribution of the machine learningmodel to the relearning will be described. FIG. 10 is a sequence diagramillustrating a flow of processing. As illustrated in FIG. 10, theacquisition unit 30 of the cloud server 10 acquires data including theoperation log and the sensor value from each edge (S101 to S103).

Subsequently, the learning processing unit 40 of the cloud server 10generates training data from the acquired data and learns the machinelearning model by using the training data (S104). Then, the learningprocessing unit 40 of the cloud server 10 distributes the learnedmachine learning model which is learned to each edge (S105 to S107).

Thereafter, each edge performs prediction control by using the learnedmachine learning model that is distributed (S108 and S109). For example,the edge terminal of each edge inputs a sensor value measured by asensor to the learned machine learning model that is distributed andacquires a prediction result of a user's operation. Then, when theprediction result is “Up”, each edge terminal increases a settingtemperature of an air conditioner by one degree, and when the predictionresult is “Down”, each edge terminal lowers the setting temperature ofthe air conditioner by one degree. When the prediction result is “Keep”,each edge terminal maintains the setting temperature of the airconditioner without changing the setting temperature.

Thereafter, the relearning processing unit 50 of the cloud server 10collects data from an edge A (S110 and S111). For example, therelearning processing unit 50 receives data including the operation logand the sensor value collected by the edge A after the distribution ofthe machine learning model.

Subsequently, the relearning processing unit 50 of the cloud server 10specifies a cancel operation on the basis of the collected data (S112)and excludes an operation log associated with the cancel operation fromthe training data of the data of the edge (S113).

Thereafter, the relearning processing unit 50 of the cloud server 10relearns the machine learning model by using the training data obtainedby excluding the data (S114) and distributes the relearned machinelearning model only to the edge A (S115 and S116). Then, the edgeterminal of the edge A performs prediction control by using therelearned machine learning model that is distributed (S117). In thisway, relearning of the machine learning model is performed for each edgeterminal.

[Effects]

As described above, after distributing the machine learning model toeach edge, the cloud server 10 can specify data that is not suitable asthe training data for each edge on the basis of the data acquired fromeach edge. Then, the cloud server 10 can relearn the machine learningmodel, for each edge, by using the training data obtained by excludingthe data which is not suitable. Therefore, the cloud server 10 canexclude not only the data which is not suitable but also the datarelated to the data which is not suitable from the learning target.Therefore, the cloud server 10 can reduce a frequency of relearning andefficiently learn the machine learning model adapted to each edge.

FIGS. 11A and 11B are diagrams for explaining a difference from generalrelearning. As illustrated in FIG. 11A, in the general relearning,relearning is performed as excluding only the data corresponding to thecancel operation when the cancel operation is performed. Therefore, amachine learning model of which a part near the cancel operation isadapted to an edge is generated. Therefore, in the relearned machinelearning model, relearning is not performed until a new cancel operationis performed other than a part near the cancel operation. Therefore,with the general relearning, it is not possible to learn inappropriateunderlying training data until the data becomes apparent. Furthermore,with the general relearning, relearning is repeatedly performed eachtime when the inappropriate underlying training data becomes apparent,and a frequency of relearning is high.

On the other hand, as illustrated in FIG. 118, in relearning accordingto the first embodiment, when the cancel operation is performed,relearning is performed as excluding both of the data corresponding tothe cancel operation and the data related to the data. Therefore, in therelearning according to the first embodiment, relearning can beperformed as excluding not only data near the cancel operation but alsothe inappropriate training data in the machine learning model.Therefore, in the relearning according to the first embodiment, it ispossible to relearn the entire machine learning model with respect tothe single cancel operation in comparison with the general relearning.Accordingly, it is possible to reduce repetition of the relearningcorresponding to the inappropriate underlying training data, and it ispossible to quickly generate a machine teaming model adapted to the edgewhile reducing the frequency of the relearning.

Specific Example

Next, application examples of the machine learning model according tothe first embodiment will be described with reference to FIGS. 12 to 14.FIG. 12 is a diagram for explaining a first specific example to whichthe first embodiment is applied, FIG. 13 is a diagram for explaining asecond specific example to which the first embodiment is applied, andFIG. 14 is a diagram for explaining a third specific example to whichthe first embodiment is applied.

As illustrated in FIG. 12, the machine learning model according to thefirst embodiment can be applied to a three-value classification modelthat inputs various sensor values such as the room temperature, theoutside temperature, the humidity, or the like and predicts an operationon the setting temperature “Up/Down/Keep” or a binary valueclassification model that predicts a power operation “On/Of” on an airconditioner. In this case, as using the sensor value as an explanatoryvariable and using an operation on the setting temperature or a poweroperation on the air conditioner as an objective variable, a machinelearning model is learned.

Furthermore, as illustrated in FIG. 13, the machine learning modelaccording to the first embodiment can be applied to the three-valueclassification model which input the sensor value obtained by a humansensor or the like and predicts an illumination brightness operation“Up/Down/Keep”. In this case, as using the sensor value as theexplanatory variable and using the illumination brightness operation asthe objective variable, the machine learning model is learned.

Furthermore, as illustrated in FIG. 14, the machine learning modelaccording to the first embodiment can be applied to a model that inputsa camera image, position coordinates of a robot arm, or the like andpredicts an angle of the robot arm at the time of picking. In this case,as using the camera image and the position coordinates of the robot armas the explanatory variables and using the angle of the arm as theobjective variable, a machine learning model is learned.

Second Embodiment

Although the embodiment has been described above, the present embodimentmay be implemented in various forms in addition to the above embodiment.

[Exclusion Determination]

In the first embodiment, an example has been described in which theoperation log associated with the cancel operation is specified and thedata acquired from the edge that is a transmission source of theoperation log is excluded from the learning target. However, the presentembodiment is not limited to this. For example, it can be determinedwhether or not to exclude the data by integrally analyzing data of theedge to be relearned and data of the edge to be excluded.

FIG. 15 is a diagram for explaining exclusion determination. Asillustrated in FIG. 15, a cloud server 10 compares a data distributionof an edge A to be relearned and a data distribution of an edge B to beexcluded and can determine the data distribution of the edge B as anexclusion target only when the data distributions are different fromeach other. Note that a case where the data distributions are differentfrom each other is not limited to a case where all the data does notcoincide and a case where a predetermined number of pieces of data doesnot coincide. A general criteria of statistics can be adopted.Furthermore, in FIG. 15, a relationship between a room temperature andan outside temperature is illustrated. However, the present embodimentis not limited to this, and various data measured by an edge such as theroom temperature and the operation log can be adopted.

[Target Space]

In the above embodiments, the room in a company or the like has beendescribed as an example. However, the present embodiment is not limitedto this. For example, various spaces such as an inside of a train, acar, or the like, a machine room, and an airplane can be used astargets.

[Training Data]

In the above embodiments, an example has been described in which theroom temperature, the outside temperature, and the humidity are used asthe training data. However, the present embodiment is not limited tothis. For example, a machine learning model that predicts a user'soperation as using the room temperature and the outside temperature astraining data, a machine learning model that predicts a user's operationas using a change in the room temperature and a change in the outsidetemperature within a predetermined period of time, for example, fiveminutes, as the training data, and the like can be learned. Furthermore,at the time of relearning, a log (operation log and sensor value) thatis collected before relearning can be used as the training data.Furthermore, a device that generates a first machine learning model anda device that performs relearning can be separately made as differentdevices.

[Numerical Value]

The items of the sensor value, the numerical values, the number ofdevices, the number of edges, or the like described in the aboveembodiments are not limited to those illustrated, and information thatcan be collected by a general sensor and the like can be used.Furthermore, a prediction interval can be arbitrarily changed, forexample, after 30 minutes or after two hours. In that case, a collectionunit of the sensor value or the like is changed to an arbitrary time.Furthermore, an example has been described in which the sensor value andthe operation log are used as the training data. However, the presentembodiment is not limited to this, and only the sensor value can beused.

[Prediction]

In the above embodiments, an example has been described in which themachine learning model that predicts the user's operation isconstructed. However, the present embodiment is not limited to this, anda machine teaming model that predicts a room temperature can beconstructed. In this case, the room temperature at 30 minutes later, forexample, is used as the objective variable.

[System]

Pieces of information including the processing procedure, controlprocedure, specific name, various types of data and parameters describedabove in the document or illustrated in the drawings may be changed inany ways unless otherwise specified.

Furthermore, each component of each apparatus illustrated in thedrawings is functionally conceptual and does not necessarily have to bephysically configured as illustrated in the drawings. For example, aspecific form of distribution and integration of each apparatus is notrestricted to the forms illustrated in the drawings. For example, thismeans that all or a part of the apparatus can be configured by beingfunctionally or physically distributed and integrated in arbitrary unitsaccording to various loads, usage situations, or the like. For example,the learning processing unit 40 and the relearning processing unit 50can be integrated.

Moreover, all or an arbitrary part of each processing function performedby each apparatus may be implemented by a central processing unit (CPU)and a program analyzed and executed by the CPU, or may be implemented ashardware by wired logic.

[Hardware]

Since the hardware configuration of the cloud server 10 is included,here, a computer 300 will be described. FIG. 16 is a diagramillustrating an example of a hardware configuration. As illustrated inFIG. 16, the cloud server includes a communication device 10 a, a HardDisk Drive (HDD) 10 b, a memory 10 c, and a processor 10 d. Furthermore,the units illustrated in FIG. 16 are connected to each other by a bus orthe like.

The communication device 10 a is a network interface card or the likeand communicates with another server. The HDD 10 b stores programs andDBs for activating the functions illustrated in FIG. 2.

The processor 10 d reads a program that executes processing similar tothat of each processing unit illustrated in FIG. 2 from the HDD 10 b orthe like to develop the read program in the memory 10 c, therebyactivating a process that executes each function described withreference to FIG. 2 and other drawings. For example, this processexecutes a function similar to that of each processing unit included inthe cloud server 10. For example, the processor 10 d reads a programhaving a function similar to those of the acquisition unit 30, thelearning processing unit 40, the relearning processing unit 50, or thelike from the HDD 10 b or the like. Then, the processor 10 d executes aprocess for executing the processing similar to those of the acquisitionunit 30, the learning processing unit 40, the relearning processing unit50, or the like.

In this manner, the cloud server 10 behaves as an information processingdevice that performs an air conditioning control method by reading andexecuting the program. Furthermore, the cloud server 10 can alsoimplement functions similar to the functions of the above-describedembodiments by reading the program described above from a recordingmedium by a medium reading device and executing the read programdescribed above. Note that the program in the other embodiment is notlimited to being executed by the cloud server 10. For example, thepresent embodiment can be similarly applied to a case where anothercomputer or server executes the program, or a case where such computerand server cooperatively execute the program.

All examples and conditional language provided herein are intended forthe pedagogical purposes of aiding the reader in understanding theinvention and the concepts contributed by the inventor to further theart, and are not to be construed as limitations to such specificallyrecited examples and conditions, nor does the organization of suchexamples in the specification relate to a showing of the superiority andinferiority of the invention. Although one or more embodiments of thepresent invention have been described in detail, it should be understoodthat the various changes, substitutions, and alterations could be madehereto without departing from the spirit and scope of the invention.

What is claimed is:
 1. A machine learning method executed by a computer,the machine learning method comprising: distributing a first machinelearning model learned on the basis of a plurality of logs collectedfrom a plurality of electronic devices to each of the plurality ofelectronic devices, the first machine learning model outputtingoperation content for operating an electronic device; when an operationdifferent from an output result of the first machine learning model isperformed by a user relative to a first electronic device among theplurality of electronic devices, estimating a similar log correspondingto a state of the first machine learning model in which the differentoperation is performed from the plurality of logs; generating a secondmachine learning model on the basis of a log obtained by excluding a logof a second electronic device associated with the similar log from amongthe plurality of logs; and distributing the second machine learningmodel to the first electronic device.
 2. The machine learning methodaccording to claim 1, wherein executing periodically acquiring aplurality of logs from the plurality of electronic devices after thedistribution of the first machine learning model, and the estimatingincludes: specifying a state of the first machine learning model inwhich the different operation is performed on the basis of the pluralityof logs acquired after the distribution of the first machine learningmodel; and estimating the similar log similar to the specified statefrom among the plurality of logs used to learn the first machinelearning model.
 3. The machine learning method according to claim 1,wherein the distributing includes distributing the first machinelearning model learned by using the plurality of logs includingoperation content relative to the electronic device and a sensor valueused to specify a state of the electronic device when the operationcontent is performed as training data; the estimating includesspecifying a sensor value when the different operation is performed fromamong the sensor values included in the plurality of logs after thedistribution of the first machine learning model and specifies thesecond electronic device that has measured the specified sensor value;and the generating includes generating the second machine learning modelon the basis of the training data obtained by excluding the log of thesecond electronic device from the training data.
 4. The machine learningmethod according to claim 1, wherein the estimating includes: plottingthe different operation on a space in which the sensor value included inthe training data is used as a dimension, that is, a feature spaceassociated with the operation content included in the training data; andspecifying an electronic device that measures a sensor value associatedwith operation content in the training data dose to the plotteddifferent operation as the second electronic device.
 5. The machinelearning method according to claim 1, wherein the first machine learningmodel and the second machine learning model are classification modelsthat make classification into two or more classes on the basis of theplurality of logs.
 6. A non-transitory computer-readable storage mediumstoring a program that causes a computer to execute a process, theprocess comprising: distributing a first machine learning model, whichoutputs operation content relative to an electronic device, learned onthe basis of a plurality of logs collected from a plurality ofelectronic devices to each of the plurality of electronic devices; whenan operation different from an output result of the first machinelearning model is performed by a user relative to a first electronicdevice among the plurality of electronic devices, estimating a similarlog corresponding to a state of the first machine learning model inwhich the different operation is performed from the plurality of logs;generating a second machine learning model on the basis of a logobtained by excluding a log of a second electronic device associatedwith the similar log from among the plurality of logs; and distributingthe second machine learning model to the first electronic device.
 7. Amachine learning device, comprising: a memory; and a processor coupledto the memory and the processor configured to: distribute a firstmachine learning model learned on the basis of a plurality of logscollected from a plurality of electronic devices to each of theplurality of electronic devices, the first machine learning modeloutputting operation content for operating an electronic device, when anoperation different from an output result of the first machine learningmodel is performed by a user relative to a first electronic device amongthe plurality of electronic devices, estimate a similar logcorresponding to a state of the first machine learning model in whichthe different operation is performed from the plurality of logs,generate a second machine learning model on the basis of a log obtainedby excluding a log of a second electronic device associated with thesimilar log from among the plurality of logs, and distribute the secondmachine learning model to the first electronic device.
 8. The machinelearning device according to claim 7, wherein the processor isconfigured to: execute periodically acquiring a plurality of logs fromthe plurality of electronic devices after the distribution of the firstmachine learning model, and specify a state of the first machinelearning model in which the different operation is performed on thebasis of the plurality of logs acquired after the distribution of thefirst machine learning model, and estimate the similar log similar tothe specified state from among the plurality of logs used to learn thefirst machine learning model.
 9. The machine learning device accordingto claim 7, wherein the processor is configured to: distribute the firstmachine learning model learned by using the plurality of logs includingoperation content relative to the electronic device and a sensor valueused to specify a state of the electronic device when the operationcontent is performed as training data, specify a sensor value when thedifferent operation is performed from among the sensor values includedin the plurality of logs after the distribution of the first machinelearning model and specifies the second electronic device that hasmeasured the specified sensor value, and generate the second machinelearning model on the basis of the training data obtained by excludingthe log of the second electronic device from the training data.
 10. Themachine learning device according to claim 7, wherein the processor isconfigured to: plot the different operation on a space in which thesensor value included in the training data is used as a dimension, thatis, a feature space associated with the operation content included inthe training data, and specify an electronic device that measures asensor value associated with operation content in the training dataclose to the plotted different operation as the second electronicdevice.
 11. The machine learning device according to claim 7, whereinthe first machine learning model and the second machine learning modelare classification models that make classification into two or moreclasses on the basis of the plurality of logs.